package com.sylli.oeuf.server.object.transferable;

public class CharacterPostDataTO extends BasedTO {

	/**
	 * 
	 */
	private static final long serialVersionUID = -4872310259173643106L;
	
	private int charId;
	
	private int currentPos;
	
	private int currentMap;
	
	private int currentHp;
	
	private int currentMp;
	
	private int currentExp;
	
	private int turnLeft;
	
	private long totalTurn;

	@Override
	public boolean equals(Object obj) {
		if (obj instanceof CharacterPostDataTO) {
			CharacterPostDataTO pdt = (CharacterPostDataTO) obj;
			return pdt.charId == charId
				&& pdt.currentPos == currentPos
				&& pdt.currentMap == currentMap
				&& pdt.currentHp == currentHp
				&& pdt.currentMp == currentMp
				&& pdt.currentExp == currentExp
				&& pdt.turnLeft == turnLeft
				&& pdt.totalTurn == totalTurn;
		}
		return false;
	}

	@Override
	public String toString() {
		return "CharacterPostData: charId=" + charId
			 + ", currentPos=" + currentPos
			 + ", currentMap=" + currentMap
			 + ", currentHp=" + currentHp
			 + ", currentMp=" + currentMp
			 + ", currentExp=" + currentExp
			 + ", turnLeft=" + turnLeft
			 + ", totalTurn=" + totalTurn;
			 
	}

	public void incrementExp(int value) {
		currentExp += value;
	}
	
	public int getCharId() {
		return charId;
	}

	public void setCharId(int charId) {
		this.charId = charId;
	}

	public int getCurrentPos() {
		return currentPos;
	}

	public void setCurrentPos(int currentPos) {
		this.currentPos = currentPos;
	}

	public int getCurrentMap() {
		return currentMap;
	}

	public void setCurrentMap(int currentMap) {
		this.currentMap = currentMap;
	}

	public int getTurnLeft() {
		return turnLeft;
	}

	public void setTurnLeft(int turnLeft) {
		this.turnLeft = turnLeft;
	}

	public long getTotalTurn() {
		return totalTurn;
	}

	public void setTotalTurn(long totalTurn) {
		this.totalTurn = totalTurn;
	}

	public int getCurrentHp() {
		return currentHp;
	}

	public void setCurrentHp(int currentHp) {
		this.currentHp = currentHp;
	}

	public int getCurrentMp() {
		return currentMp;
	}

	public void setCurrentMp(int currentMp) {
		this.currentMp = currentMp;
	}

	public int getCurrentExp() {
		return currentExp;
	}

	public void setCurrentExp(int currentExp) {
		this.currentExp = currentExp;
	}
	
}
